package main

import "fmt"

type FuncType func(int, int) int

// 回调函数， 函数有一个参数是函数类型， 这个函数就是回调函数
// 计算器，可以进行四则运算
// 多态 多种形态
// 我理解为 类似java的接口， 实现具体接口传入， 类似lambda的consumer
func Calc(a, b int, fTest FuncType) (result int) {
	fmt.Println("Calc")
	result = fTest(a, b)
	return
}

func main() {
	a := Calc(1, 2, func(a int, b int) int {
		return a + b
	})

	fmt.Println(a)

}
